package com.jianguo.order.domain;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.jianguo.common.core.domain.BaseEntity;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jianguo.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableField;

/**
 * 订单详情对象 pz_order_detail
 *
 * @author xjj
 * @date 2024-03-30
 */
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public class PzOrderDetail extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 序号 */
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;
    /** 订单id */
    @Excel(name = "订单id")
    private String orderId;
    /** 患者id */
    @Excel(name = "患者id")
    private String patientId;
    /** 客户id */
    @Excel(name = "客户id")
    private String userId;
    /** 服务id */
    @Excel(name = "服务id")
    private String serviceId;
    /** 服务标题 */
    @Excel(name = "服务标题")
    private String serviceTitle;
    /** 地址 */
    @Excel(name = "地址")
    private String address;
    /** 服务时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "服务时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date serviceTime;
    /** 特殊要求(备注) */
    @Excel(name = "特殊要求(备注)")
    private String special;
    /** 医院 */
    @Excel(name = "医院")
    private String hospital;
    /** 金额 */
    @Excel(name = "金额")
    private Long amount;
    /** 电话 */
    @Excel(name = "电话")
    private String phone;
    /** 订单状态 */
    @Excel(name = "订单状态")
    private Long status;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderId", getOrderId())
            .append("patientId", getPatientId())
            .append("userId", getUserId())
            .append("serviceId", getServiceId())
            .append("serviceTitle", getServiceTitle())
            .append("address", getAddress())
            .append("serviceTime", getServiceTime())
            .append("special", getSpecial())
            .append("hospital", getHospital())
            .append("amount", getAmount())
            .append("phone", getPhone())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("deleted", getDeleted())
            .append("remark", getRemark())
        .toString();
    }
}
